#define _CRT_SECURE_NO_WARNINGS 1


//#include<iostream>
//
//using namespace std;
//
//bool IsWavesNum(char* str)
//{
//	int len = strlen(str);
//	if (len == 1)
//	{
//		return true;
//	}
//	char even = str[0], odd = str[1];
//	for (int i = 2; i < len; i++)
//	{
//		if (i % 2 == 0 && str[i] != even)
//		{
//			return false;
//		}
//		else if (i % 2 != 0 && str[i] != odd)
//		{
//			return false;
//		}
//	}
//	return true;
//}
//
//void Reverse(char* left, char* right)
//{
//	while (left <= right)
//	{
//		char temp = *left;
//		*left = *right;
//		*right = temp;
//		left++;
//		right--;
//	}
//}
//
//char* Func(int n, int m)
//{
//	char* ret = new char[10];
//	int index = 0;
//	while (n)
//	{
//		char x = 0;
//		if (n % m >= 0 && n % m <= 9)
//		{
//			x = (n % m) + '0';
//		}
//		else
//		{
//			x = (n % m) + 55;
//		}
//		ret[index++] = x;
//		n /= m;
//	}
//	ret[index] = '\0';
//	Reverse(ret, ret + index - 1);
//	return ret;
//}
//
//int main()
//{
//	int l = 0, r = 0, L = 0, R = 0, k = 0;
//	cin >> l >> r >> L >> R >> k;
//	for (int i = 191919; i <= R; i++)
//	{
//		int count = 0;
//		for (int j = l; j <= r; j++)
//		{
//			char* ret = Func(i, j);
//			if (IsWavesNum(ret))
//			{
//				count++;
//			}
//		}
//		if (count == k)
//		{
//			cout << i << endl;
//		}
//	}
//
//	return 0;
//}


//#include<string>
//#include<math.h>
//#include<iostream>
//
//using namespace std;
//
//bool Func(int n)
//{
//	for (int i = 2; i < sqrt(n); i++)
//	{
//		if (n % i == 0)
//		{
//			return false;
//		}
//	}
//	return true;
//}
//
//int main()
//{
//	string s;
//	cin >> s;
//	int count[26] = { 0 };
//	int max = 0, min = 1000;
//	for (auto& e : s)
//	{
//		count[e - 'a']++;
//	}
//	for (int i = 0; i < 26; i++)
//	{
//		if (count[i] > max)
//		{
//			max = count[i];
//		}
//		else if (count[i] < min && count[i] != 0)
//		{
//			min = count[i];
//		}
//	}
//	if (Func(max - min) && max - min != 0)
//	{
//		cout << "Lucky Word" << endl << (max - min) << endl;
//	}
//	else
//	{
//		cout << "No Answer" << endl << 0 << endl;
//	}
//
//	return 0;
//}


//#include<vector>
//#include<algorithm>
//#include<iostream>
//
//using namespace std;
//
//int main()
//{
//	vector<int> v;
//	int n = 0, k = 0;
//	cin >> n >> k;
//	for (int i = 0; i < n; i++)
//	{
//		int temp = 0;
//		cin >> temp;
//		v.push_back(temp);
//	}
//	sort(v.begin(), v.end());
//	int begin = 0, end = 1;
//	int count = 0;
//	while (end < n)
//	{
//		if (v[begin] != v[end])
//		{
//			begin = end;
//			count++;
//			if (count == k - 1)
//			{
//				break;
//			}
//		}
//		end++;
//	}
//	if (begin < n)
//	{
//		cout << v[begin] << endl;
//	}
//	else
//	{
//		cout << "NO RESULT" << endl;
//	}
//
//	return 0;
//}


//#include<string>
//#include<iostream>
//
//using namespace std;
//
//string Func(string s, int m)
//{
//	int size = s.size();
//	int sum = 0, end = size - 1;
//	for (int i = 0; i < size; i++)
//	{
//		int x = 0;
//		if (s[i] >= '0' && s[i] <= '9')
//		{
//			x = s[i] - '0';
//		}
//		else
//		{
//			x = s[i] - 55;
//		}
//		sum += x * pow(m, end--);
//	}
//	string ret = to_string(sum);
//	return ret;
//}
//
//int main()
//{
//	int n = 0, m = 0;
//	string s;
//	cin >> n >> s >> m;
//	if (n != 10)
//	{
//		s = Func(s, n);
//	}
//	int val = stoi(s);
//	string s1;
//	while (val)
//	{
//		char x = 0;
//		if (val % m >= 10 && val % m <= 15)
//		{
//			x = (val % m) + 55;
//		}
//		else
//		{
//			x = (val % m) + '0';
//		}
//		s1 += x;
//		val /= m;
//	}
//	reverse(s1.begin(), s1.end());
//	cout << s1 << endl;
//
//	return 0;
//}


//#include<iostream>
//
//using namespace std;
//
//int main()
//{
//	int m = 0;
//	cin >> m;
//	for (int i = 1; i < m / 2; i++)
//	{
//		int sum = 0;
//		for (int j = i; j < m / 2; j++)
//		{
//			sum += j;
//			if (sum == m)
//			{
//				cout << i << ' ' << j << endl;
//			}
//			else if (sum > m)
//			{
//				break;
//			}
//		}
//	}
//
//	return 0;
//}


#include<string>
#include<iostream>

using namespace std;

int Func(string s, int n)
{
	int end = 3;
	int ret = 0;
	int i = n;
	while (end--)
	{
		ret = ret * 10 + (s[i] - '0');
		i++;
	}
	return ret;
}

int main()
{
	int k = 0;
	cin >> k;
	int flag = -1;
	for (int i = 10000; i <= 30000; i++)
	{
		string s = to_string(i);
		int sub1 = Func(s, 0);
		int sub2 = Func(s, 1);
		int sub3 = Func(s, 2);
		if (sub1 % k == 0 && sub2 % k == 0 && sub3 % k == 0)
		{
			cout << i << endl;
			flag = 1;
		}
	}
	if (flag == -1)
	{
		cout << "No" << endl;
	}

	return 0;
}